<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>p2_CSS选择器</title>
    <style>
        /*1.标签名选择器*/
        h4 {
            color: red;
        }

        /*2.id 选择器: 选中指定id值的唯一一个元素*/
        #d1 {
            width: 100px;
            height: 100px;
            background-color: cyan;
        }

        /*3.类选择器:选中指定class值的一类元素*/
        .msg {
            color: white;
        }

        .error {
            background-color: red;
        }

        .success {
            background-color: green;
        }

        /*4. 并列选择器:紧挨在一起的写法,
        必须同时满足两个选择器的条件才可以生效,是"与"的关系*/
        #d1:hover {
            background-color: lightpink;
        }

        /*5.伪类选择器 必须按照下面的顺序写!
        link-visited-hover-active*/

        a:link { /*link:超链接未被访问过时的状态*/
            color: gray;
        }

        a:visited { /*visited:超链接已被访问过时的状态*/
            color: green;
        }

        a:hover { /*hover: 元素悬停时的状态，非超链接独有*/
            color: orange;
        }

        a:active { /*active: 超链接激活时的状态*/
            color: red;
        }

        /*6.属性选择器:选中包含指定属性、属性值的元素*/
        input[name="uname"] {
            background-color: yellow;
        }

        /*7.通用选择器*/
        * {
            font-style: italic;
        }

        /*8.群组选择器: 可以写多个不同的选择器,使用逗号隔开，
        只要满足其中一种就生效，是 "或"的关系*/
        h4, #d1, .error {
            /*边框: 粗细 线型 颜色 solid 单实线 */
            border: 5px solid purple;
        }

        /*9.后代选择器(空格) 选中包含在内的所有后代元素*/
        #d2 span {
            background-color: lightskyblue;
        }

        /*10.直接子代选择器(大于号>) 只选中子元素，但是可以逐级向下写多层*/
        #d2 > div > p > span {
            color: orange;
        }


    </style>
</head>
<body>
<div id="d1">我是div</div>
<div>我是div</div>
<p>我是段落</p>
<h4>我是标题</h4>
<h4>我是标题</h4>
<hr>
<span class="error msg">用户名不能为空!</span>
<span class="error msg">密码不能为空!</span>
<span class="success msg">手机号格式正确!</span>
<span class="success msg">邮箱格式正确!</span>
<br>
<a href="http://www.baidu.com">超链接1</a>
<a href="adsda">超链接2</a>
<hr>
<input type="text" name="uname">
<input type="text" name="nickname">
<select name="uname">
    <option value="1"></option>
    <option value="2"></option>
</select>
<hr>
<div id="d2">
    <span>111</span>
    <div>
        <span>222</span>
        <p>测试文字</p>
        <p>我是<span>333</span></p>
    </div>
    <span>444</span>
</div>

</body>
</html>